package models

import (
	"go-blog/internal/dao"
)

type Tag struct {
	ID     int    `json:"id"`
	Status int    `json:"status"`
	Title  string `json:"title"`
}

func (t Tag) Get(id string) (tag *Tag, err error) {
	tag = new(Tag)
	if err = dao.DB.Debug().Where("id=?", id).First(tag).Error; err != nil {
		return nil, err
	}
	return
}

func (t Tag) List() (list []*Tag, err error) {
	if err = dao.DB.Find(&list).Error; err != nil {
		return nil, err
	}
	return
}

func (t Tag) Created(tag *Tag) (err error) {
	err = dao.DB.Create(&tag).Error
	return
}

func (t Tag) Update(tag *Tag) (err error) {
	err = dao.DB.Save(tag).Error
	return
}

func (t Tag) Del(id string) (err error) {
	err = dao.DB.Where("id=?", id).Delete(&Tag{}).Error
	return
}
